`ifndef __CONSTANT__
	`define BREAKCODE 8'hF0	

	// Make Code
	`define ESC   8'h76
	`define F1    8'h05
	`define F2    8'h06
	`define F3    8'h04
	`define F4    8'h0C
	`define F5    8'h03
	`define F6    8'h0B
	`define F7    8'h83
	`define F8    8'h0A
	`define F9    8'h01
	`define F10   8'h09
	`define F11   8'h78
	`define F12   8'h07

	`define BACK_QUOTE  8'h0E // `
	`define TIDLE  		8'h0E // ~
	
	`define ONE  		8'h16
	`define BANG 		8'h16 // !
	
	`define TWO  		8'h1E
	`define AT   		8'h1E // @
	
	`define THREE		8'h26
	`define HASH 		8'h26 // #
	
	`define FOUR		8'h25
	`define DOLLAR		8'h25 // $
	
	`define FIVE		8'h2E
	`define PERCENT		8'h2E // %
	
	`define SIX 		8'h36
	`define CARET 		8'h36 // ^
	
	`define SEVEN		8'h3D
	`define AND   		8'h3D // &
	
	`define EIGHT		8'h3E
	`define ASTERISK 	8'h3E // *
	
	`define NINE		8'h46
	`define LEFT_PARENTHESIS  8'h46 // (
	
	`define ZERO		8'h45
	`define RIGHT_PARENTHESIS 8'h45 // )
	
	`define MINUS		8'h4E // -
	`define UNDERSCORE 	8'h4E // _
	`define PLUS		8'h55 // +
	`define EQUAL 		8'h55 // =
	`define BACK_SLASH 	8'h5D // \
	`define PIPE 		8'h5D // |
	`define BACKSPACE 	8'h66 
	`define TABLE 		8'h0D 
	// small letter
	`define S_Q   		8'h15
	`define S_W   		8'h1D
	`define S_E   		8'h24
	`define S_R   		8'h2D
	`define S_T   		8'h2C
	`define S_Y   		8'h35
	`define S_U   		8'h3C
	`define S_I   		8'h43
	`define S_O   		8'h44
	`define S_P   		8'h4D
	`define S_A   		8'h1C
	`define S_S   		8'h1B
	`define S_D   		8'h23
	`define S_F   		8'h2B
	`define S_G   		8'h34
	`define S_H   		8'h33
	`define S_J   		8'h3B
	`define S_K   		8'h42
	`define S_L   		8'h4B
	`define S_Z   		8'h1A
	`define S_X   		8'h22
	`define S_C   		8'h21
	`define S_V   		8'h2A
	`define S_B   		8'h32
	`define S_N   		8'h31
	`define S_M   		8'h3A
	// captial letter
	`define C_Q   		8'h15 
	`define C_W   		8'h1D
	`define C_E   		8'h24
	`define C_R   		8'h2D
	`define C_T   		8'h2C
	`define C_Y   		8'h35
	`define C_U   		8'h3C
	`define C_I   		8'h43
	`define C_O   		8'h44
	`define C_P   		8'h4D
	`define C_A   		8'h1C
	`define C_S   		8'h1B
	`define C_D   		8'h23
	`define C_F   		8'h2B
	`define C_G   		8'h34
	`define C_H   		8'h33
	`define C_J   		8'h3B
	`define C_K   		8'h42
	`define C_L   		8'h4B
	`define C_Z   		8'h1A
	`define C_X   		8'h22
	`define C_C   		8'h21
	`define C_V   		8'h2A
	`define C_B   		8'h32
	`define C_N   		8'h31
	`define C_M   		8'h3A
	`define CAPS   		8'h58

	`define ENTER 		8'h5A

	`define LEFT_BRACKET  8'h54 // [
	`define LEFT_CURLY_BRACKET  8'h54 // {

	`define RIGHT_BRACKET 8'h5B // ]
	`define RIGHT_CURLY_BRACKET 8'h5B // }
	
	`define SEMICOLON   8'h4C   // ;
	`define COLON   	8'h4C   // :
	
	`define SIGNAL_QUOTE 8'h52  // '
	`define QUOTE   	 8'h52  // "
	
	`define COMMA 		8'h41 	// ,
	`define LESS_THAN 	8'h41 	// <
	
	`define DOT 		8'h49 	// .
	`define GREATER_THAN 8'h49 	// >
	
	`define SLASH		8'h4A 	// /
	`define QUESTION_MARK 8'h4A // ?
	
	`define LEFT_SHIFT  8'h12
	`define RIGHT_SHIFT 8'h59
	`define LEFT_CTRL 	8'h14
	`define RIGHT_CTRL 16'h14
	`define LEFT_ALT 	8'h11
	`define RIGHT_ALT  16'hE011
	`define SPACE 		8'h19

	// ASCII
	`define A_0 8'h48
	`define A_1 8'h49
	`define A_2 8'h50
	`define A_3 8'h51
	`define A_4 8'h52
	`define A_5 8'h53
	`define A_6 8'h54
	`define A_7 8'h55
	`define A_8 8'h56
	`define A_9 8'h58

	`define A_C_A 8'h65
	`define A_C_B 8'h66
	`define A_C_C 8'h67
	`define A_C_D 8'h68
	`define A_C_E 8'h69
	`define A_C_F 8'h70
	`define A_C_G 8'h71
	`define A_C_H 8'h72
	`define A_C_I 8'h73
	`define A_C_J 8'h74
	`define A_C_K 8'h75
	`define A_C_L 8'h76
	`define A_C_M 8'h77
	`define A_C_N 8'h78
	`define A_C_O 8'h79
	`define A_C_P 8'h80
	`define A_C_Q 8'h81
	`define A_C_R 8'h82
	`define A_C_S 8'h83
	`define A_C_T 8'h84
	`define A_C_U 8'h85
	`define A_C_V 8'h86
	`define A_C_W 8'h87
	`define A_C_X 8'h88
	`define A_C_Y 8'h89
	`define A_C_Z 8'h90

	`define A_S_A 8'h97
	`define A_S_B 8'h98
	`define A_S_C 8'h99
	`define A_S_D 8'h100
	`define A_S_E 8'h101
	`define A_S_F 8'h102
	`define A_S_G 8'h103
	`define A_S_H 8'h104
	`define A_S_I 8'h105
	`define A_S_J 8'h106
	`define A_S_K 8'h107
	`define A_S_L 8'h108
	`define A_S_M 8'h109
	`define A_S_N 8'h110
	`define A_S_O 8'h111
	`define A_S_P 8'h112
	`define A_S_Q 8'h113
	`define A_S_R 8'h114
	`define A_S_S 8'h115
	`define A_S_T 8'h116
	`define A_S_U 8'h117
	`define A_S_V 8'h118
	`define A_S_W 8'h119
	`define A_S_X 8'h120
	`define A_S_Y 8'h121
	`define A_S_Z 8'h122

`endif
